Presently, robotic data storage libraries are primarily used to archive data, i.e., store data that is not immediately needed by a host computer, and provide archived data to the host computer when the data is needed. A typical robotic data storage library receives data from a host computer and writes the data to a recording medium of a data storage element. When the host computer requires some of the data that was previously written to a data storage element, a request for the data is sent from the host computer to the library. In response, the library locates the data storage element, reads the data from the data storage element, and transmits the data to the host computer system. Most robotic data storage libraries are currently comprised of: (a) a plurality of storage locations for holding the data storage elements; (b) a data transfer interface capable of establishing a communication path with a data storage element so that data can be transferred between the data storage element and the host computer; (c) an entry/exit port for transferring a data storage element into and out of the library; and (d) a transport unit for moving a data storage element between locations within the library and the entry/exit port.
One example of a robotic data storage library is a tape cartridge library. In a tape cartridge library, for example, the library comprises a plurality of shelf structures comprising slots for holding tape cartridges, a drive for writing data to and/or reading data from the tape housed in the tape cartridges and a robot for transporting the tape cartridges between the storage slots and the tape drive. When a host computer provides data for archival purposes to the tape cartridge library, the robot retrieves a tape cartridge from a storage slot and transports the tape cartridge to a drive. The drive writes the data onto the tape in the tape cartridge. When the drive has completed writing the data onto the tape, the robot retrieves the tape cartridge from the drive and places the tape cartridge into a storage slot for later access.
When the host computer requests the archived data, the tape cartridge library locates the tape cartridge. The robot retrieves the tape cartridge from a storage location and transports the tape cartridge to a drive. The drive reads the data from the tape in the tape cartridge and provides the data to the host computer. After the data has been read from the tape in the tape cartridge, the robot retrieves the tape cartridge from the drive and transports the tape cartridge to a storage slot.
When a tape cartridge is exported from the library, the robot retrieves the tape cartridge and transports the tape cartridge to the entry/exit port for removal from the library. Conversely, when a tape cartridge is imported into the library, the robot retrieves the tape cartridge from the entry/exit port and transports the tape cartridge to a location within the library.
During operation, the host computer typically maintains an inventory of the library that identifies items within the library (e.g., tape cartridges) and the locations of the items within the library. The host computer needs the inventory so that the host can issue instructions to the library relating to the items identified in the inventory. So, for example, an inventory may include the identity and the storage location of a particular tape cartridge. With this inventory, the host computer is able to issue a command to instruct the library to move the tape cartridge from the storage location to the drive.